package com.project.service;

import com.project.bean.DeptBean;
import com.project.bean.EmployeeBean;

import java.util.List;

public interface IDeptService {
    /**
     * 查询所有部门 ，同时统计每个部门的人数
     * @return 部门集合
     */
    List<DeptBean> findAll();

    /**
     * 级联添加，添加部门同时添加该部门的员工集合
     * @param dept 部门对象
     * @param emList 新员工集合
     */
    void add(DeptBean dept, List<EmployeeBean> emList);

    /**
     * 删除部门，同时级联删除该部门员工
     * @param id 部门ID
     */
    void delCasede(Integer id);

    /**
     * 删除部门，同时将该员工的外键设置为null
     * @param id 部门ID
     */
    void delSetNull(Integer id);

    /**
     * 按ID查询部门，同时查询该部门中所有的员工
     * @param id 部门ID
     * @return 部门对象
     */
    DeptBean findById(Integer id);
}
